package com.ourteam.product.model.dao;

import net.dao.IDataAccessInterface;


/**
 * Template Name : DAO接口模板
 * Template Version : 1
 * Template Last Modfiy Date : Thu Sep 21 11:14:14 IRKT 2017
 * Auto Generate Date : 2017-11-17 11:00:47
  * Warning ! This file will be overwrite when regenerate !
  *
 */
public interface IBaseProductModelActionDAO extends IDataAccessInterface<ProductModelAction, ProductModelActionDAOQueryBean> {
    /**
        *  Mapped Entity Name
        */
    static final String EntityName = "PRODUCT_MODEL_ACTION";

    /**
     * Mapped Field ID
    */
    static final String Id = "PRODUCT_MODEL_ACTION.ID";

    /**
     * Mapped Field OBJECT_ID
    */
    static final String ObjectId = "PRODUCT_MODEL_ACTION.OBJECT_ID";

    /**
     * Mapped Field PROPERTY_ID
    */
    static final String PropertyId = "PRODUCT_MODEL_ACTION.PROPERTY_ID";

    /**
     * Mapped Field ACTION
    */
    static final String Action = "PRODUCT_MODEL_ACTION.ACTION";

    /**
     * Mapped Field OPERATION
    */
    static final String Operation = "PRODUCT_MODEL_ACTION.OPERATION";

    /**
     * Mapped Field PROPERTY_VALUE
    */
    static final String PropertyValue = "PRODUCT_MODEL_ACTION.PROPERTY_VALUE";

    /**
     * Mapped Field STATUS
    */
    static final String Status = "PRODUCT_MODEL_ACTION.STATUS";

    /**
     * Mapped Field REMARKS
    */
    static final String Remarks = "PRODUCT_MODEL_ACTION.REMARKS";

    /**
     * Mapped Attribute propertyName
    */
    static final String PropertyName = org.apache.commons.lang.StringUtils.replace(com.ourteam.product.model.dao.IProductModelPropertyDAO.PropertyName,
            com.ourteam.product.model.dao.IProductModelPropertyDAO.EntityName +
            ".", "MODEL_PROPERTY.");

    /**
     * Mapped Attribute propertyDataType
    */
    static final String PropertyDataType = org.apache.commons.lang.StringUtils.replace(com.ourteam.product.model.dao.IProductModelPropertyDAO.DataType,
            com.ourteam.product.model.dao.IProductModelPropertyDAO.EntityName +
            ".", "MODEL_PROPERTY.");

    /**
     * Delete Data
     * @param final long id
     * @throws Exception
     */
    void delete(final long id) throws Exception;

    /**
         * Find Data By Primary Key
         * @param  final long id
         * @throws Exception
         */
    ProductModelAction findById(final long id) throws Exception;

    static public interface DataProperty {
        /**
         * Attribute id
         */
        static final String Id = "id";

        /**
         * Attribute objectId
         */
        static final String ObjectId = "objectId";

        /**
         * Attribute propertyId
         */
        static final String PropertyId = "propertyId";

        /**
         * Attribute action
         */
        static final String Action = "action";

        /**
         * Attribute operation
         */
        static final String Operation = "operation";

        /**
         * Attribute propertyValue
         */
        static final String PropertyValue = "propertyValue";

        /**
         * Attribute status
         */
        static final String Status = "status";

        /**
         * Attribute remarks
         */
        static final String Remarks = "remarks";

        /**
         * Attribute propertyName
         */
        static final String PropertyName = "propertyName";

        /**
         * Attribute propertyDataType
         */
        static final String PropertyDataType = "propertyDataType";
    }

    static public interface _DataObjectProperty extends DataProperty {
    }
}
